/**
 * PromiseConstructor 初始化函数的 resolve 函数
 */
export type PromiseResolve<T = any> = (value: T) => void

/**
 * PromiseConstructor 初始化函数的 reject 函数
 */
export type PromiseReject<T = any> = (value: T) => void

/**
 * Promise 的返回值
 */
export type PromiseValue<T> = T extends Promise<infer R> ? PromiseValue<R> : T
